package com.ruoyi.merchant.mapper;

import java.util.List;
import com.ruoyi.merchant.domain.Shop;
import org.apache.ibatis.annotations.Mapper;

@Mapper
/**
 * 店铺：存储店铺的基本信息Mapper接口
 * 
 * @author ruoyi
 * @date 2025-09-15
 */
public interface ShopMapper 
{
    public List<Shop> selectShopByType(Integer typeId, double latitude, double longitude, double radiusKm);

    public List<Shop> findAll();
    /**
     * 查询店铺：存储店铺的基本信息
     * 
     * @param id 店铺：存储店铺的基本信息主键
     * @return 店铺：存储店铺的基本信息
     */

    public Shop selectShopById(Integer id);

    /**
     * 查询店铺：存储店铺的基本信息列表
     * 
     * @param shop 店铺：存储店铺的基本信息
     * @return 店铺：存储店铺的基本信息集合
     */
    public List<Shop> selectShopList(Shop shop);

    /**
     * 新增店铺：存储店铺的基本信息
     * 
     * @param shop 店铺：存储店铺的基本信息
     * @return 结果
     */
    public int insertShop(Shop shop);

    /**
     * 修改店铺：存储店铺的基本信息
     * 
     * @param shop 店铺：存储店铺的基本信息
     * @return 结果
     */
    public int updateShop(Shop shop);

    /**
     * 删除店铺：存储店铺的基本信息
     * 
     * @param id 店铺：存储店铺的基本信息主键
     * @return 结果
     */
    public int deleteShopById(Integer id);

    /**
     * 批量删除店铺：存储店铺的基本信息
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteShopByIds(Integer[] ids);

    List<Shop> selectShopByType(Integer typeId);

    public Shop selectShopInfo(String userName);
}
